Arduino

Arduino é uma plataforma de prototipagem eletrónica,

Arduino

Conceitos básicos sobre Arduino. Fundamental para quem está a começar. 
.:. Funcionamento .:. Configuração 
.:. Programação .:. Interface

NodeMCU 

Esta placa vem com um microcontrolador ESP8266 que oferece suporte nativo para redes Wi-fi com as normas 802.11 b/g/n.

ESP 8266

Esta placa permite que microcontroladores se conectem a uma rede sem fios fazendo conexões TCP/IP 

Arduino "projetos"

Aprender fazendo projetos que aumentam gradualmente o grau de dificuldade.

Arduino "Simuladores"

tinkercad.com - online
circuito.io - online
fritzing.org - open-source

Arduino "exemplos"

Exemplos simples e concretos utilizando o arduino e o NodeMCU

Arduino por programação

Uma abordagem ao arduino na lógica da programação

Arduino por componentes

Uma abordagem ao arduino com base nos componentes eletrónicos que podem constiruir um circuito

Eletrónica - Componentes

Funcionamento básico de alguns componentes eletrónicos essenciais para a compreensão de alguns circuitos

As Três Leis da Robótica: 
1) um robô não pode ferir um humano ou permitir que um humano sofra algum mal; 
2) os robôs devem obedecer às ordens dos humanos, excepto nos casos em que tais ordens entrem em conflito com a primeira lei;
3) um robô deve proteger sua própria existência, desde que não entre em conflito com as leis anteriores.
Isaac Asimov (1950) 

 .:. Funcionamento


Arduino é uma plataforma de prototipagem eletrónica. criado por Massimo Banzi e David Cuartielles, em 2005. O Arduino é open-source e permite tranalhar com hardware e software. Com uma placa de Arduino é possível ler/INPUT (luz, temperatura…) e utilizar essa informação para manipular uma saída/OUTPUT (ativar um motor, uma lâmpada…). A placa de hardware Arduino pode ser programada enviando um conjunto de instruções para o microcontrolador (chip).  
O Arduino funciona com linguagem Arduino (Documentação de Referência da Linguagem Arduino) e a respetiva IDE ou o software para programar a placa (baseado no processing).

O arduino funciona a 16 Mhz (16 milhoes hz) – Tendo em conta que o arduino funciona na transição do relógio, ou seja, quando o relógio muda de estado (0 para 1 ou 1 para 0). Se pensarmos que a velocidade do arduino (16Mhz) e se aliarmos a isto que o arduino não tem sistema operativo, então podemos concluir que o arduino é um sistema extremamente rápido.  


Digital pin 0 a 13 


Digital pin – 0 a 13 fornecem acesso ao chip 

Podem funcionar como input ou output  

  INPUT - lendo variações de tensão (volts) de um dispositivo externo

  OUTPUT - aplicar uma determinada tensão (e.g. entre 0 e 5 volts) a um dispositivo externo

Em resumo estas portas permitem a comunicação entre o chip e os dispositivos externos (ex: Led ou uma resistência…)

Pins 3-5-6-9-10-11 pulse modulation ~ 
Permitem ajustar a tensão a aplicar a um dispositivo externo (e.g. entre 0 e 5 volts)


Pins 0 e 1 - TX  e RX



Pins 0 e 1 - TX (transmitir ) e RX (receber)

Pin 1 - TX (transmitir)
Pin 0 - RX (receber)

Sempre que é necessário a comunicação entre o Arduíno e um outro dispositivo (e.g. arduino e computador, arduino e Bluetooth)  é através destas portas que o fazemos. 

Existem 2 leds que nos indicam se os dispositivo estão a comunicar. Se os leds não piscarem então não está a ocorrer nenhuma comunicação.



Analog In pin 0 ao 5 – analog to digital 




Analog In pin 0 ao 5 – analog to digital 

Recebe sinais analógicos e transforma-os em sinais digitais.

Exemplo1:
O botão de volume recebe uma variação analógica e tira a amostra para digital.

Exemplo2:
Sensor de temperatura 
Se colocar-mos um sensor de temperatura no pin A1 irá ser lida uma amostra digital da subida ou descida da temperatura. Como resultado teremos um valor aproximado da temperatura real num dado momento. 

Nota 1
Estes pins também podem ser utilizados como os pins digitais que vimos antes

Nota 2
O pin A0 pode ser designado como pin 14, assim com A1 pin 15 ...



Reset e Power

 .:. Configuração

Porta para comunicação Arduino - PC

Seleção do modelo da placa Arduino


.:. Programação

Programa para Arduino = “SKETCH”

.:. Estrutura de um sketch

<declarações> : declaração de constantes, variáveis, tipos, etc (OPCIONAL)

void setup ( ) { <codigo> } : <codigo> é executado uma só vez; serve principalmente para efetuar inicializações

void loop ( ) { <codigo> } : após a execução de “setup”, <codigo> é executado de modo contínuo (em ciclo) até que a alimentação seja desligada (ou reset ).

Comentários //linha de comentário
/*  
texto de comentário
*/


.:. Interface

Arduino IDE (Integrated Development Environment)

http://arduino.cc/en/Guide/Environment

.:. Arduino – utilização